// 云函数入口文件
const cloud = require('wx-server-sdk')
const jwt = require('jsonwebtoken')
// 
cloud.init({ env: 's-web-devin-3gvwv5vda1185f99' }) // 使用当前云环境

const db = cloud.database();
const useToCart = async ({ goodsId, token }) => {
  // 前端带上token,后端解析token,拿到用户Id，添加进入购物车表中。
  try {
    const userInfo = jwt.verify(token, '2006A')
    // 判断去重
    // 查询carts表中是否有这个数据
    const isGoods = await db.collection('carts').where({ goodsId }).get();
    console.log('isGoods:', isGoods)
    if (!isGoods.data.length) {
      const res = await db.collection('carts')
        .add({
          data: {
            goodsId,
            userId: userInfo._id
          }
        })
      return {
        code: 0,
        msg: 'success',
        data: { ...res }
      }
    } else {
      return {
        code: -1,
        msg: '当前数据购物车已经存在了'
      }
    }
  } catch (error) {
    return {
      code: -1,
      msg: error
    }
  }
}
// 云函数入口函数
exports.main = async (event, context) => {
  const wxContext = cloud.getWXContext()
  const { token, goodsId } = event;
  const data = await useToCart({ token, goodsId })
  return {
    ...data
  }
}